#ifndef _FENGINE_KEYBOARD_INPUT_LISTENER
#define _FENGINE_KEYBOARD_INPUT_LISTENER

#include "stdafx.h"
#include "InputManager.h"

namespace FEngine
{
	/**
	 * Abstract class receiving the keyboard input event.
	 * Implement the following method :
	 *		- keyPressed(int)
	 *		- keyReleased(int)
	 * and register the class with the CoreEngine::InputManager.
	 */
	class KeyboardInputListener
	{

		public:
			
			/**
			 * Called every time a key is pressed.
			 * @param _key Id of the pressed key.
			 */
			virtual void keyPressed(int _key) = 0;
			
			/**
			 * Called every time a key is released.
			 * @param _key Id of the released key.
			 */
			virtual void keyReleased(int _key) = 0;
	};

} // namespace FEngine

#endif
